package cn.wbu.zyh.service.impl;

import cn.wbu.zyh.constant.StatusConstant;
import cn.wbu.zyh.dto.TagDTO;
import cn.wbu.zyh.dto.TagPageQueryDTO;
import cn.wbu.zyh.entity.Employee;
import cn.wbu.zyh.entity.Tag;
import cn.wbu.zyh.mapper.TagMapper;
import cn.wbu.zyh.result.PageResult;
import cn.wbu.zyh.service.TagService;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.DigestUtils;

@Service
@Slf4j
public class TagServiceImpl implements TagService {
    @Autowired
    private TagMapper tagMapper;
    @Override
    public PageResult pageQuery(TagPageQueryDTO tagPageQueryDTO) {
        PageHelper.startPage(tagPageQueryDTO.getPage(),tagPageQueryDTO.getPageSize());

        Page<Tag> page = tagMapper.pageQuery(tagPageQueryDTO);
        return new PageResult(page.getTotal(), page.getResult());
    }

    @Override
    public void save(TagDTO tagDTO) {
        Tag tag = new Tag();
        //对象属性拷贝
        BeanUtils.copyProperties(tagDTO,tag);
        tagMapper.insert(tag);
    }

    @Override
    public void update(TagDTO tagDTO) {
        Tag tag = new Tag();
        //对象属性拷贝
        BeanUtils.copyProperties(tagDTO,tag);
        tagMapper.update(tag);
    }

    @Override
    public void deleteTag(Long id) {
        tagMapper.deleteById(id);
    }
}

